package com.crm.customers.model;

import java.util.List;

import org.apache.commons.lang.builder.ReflectionToStringBuilder;

import com.crm.base.model.BaseModel;
import com.crm.sys.model.Log;
import com.crm.user.model.UserInfo;


/**
 * 客户信息表<br>
 * String cname：客户名称<br>
 * String code：行业CODE<br>
 * String firm：企业商号<br>
 * Integer calling：行业类别<br>
 * Integer productcategory：产品类别    { 网聘  招聘会 猎头 }<br>
 * String mail：邮箱<br>
 * Integer province：所在省<br>
 * Integer city：所在城市<br>
 * String address：公司地址<br>
 * String url：公司网站<br>
 * Integer source：客户来源<br>
 * String sourcetwo：客户来源自填<br>
 * String tel：联系电话<br>
 * String fax：传真<br>
 * Integer state：客户状态<br>
 * Integer level：客户级别<br>
 * String summary：客户简介<br>
 * String coofid：合作文件id<br>
 * Integer coostate：合作审核状态<br>
 * Integer type：客户类型（0用户 1企业）<br>
 * Integer paperspurpose：证件类型（升资质 挂项目 年检 其他）
 * Integer category：资质情况（资质类别）
 * Long uid：拥有人（如果是公共库则是0）
 * --------------------------<br>
 * String remarkname：合作申请驳回理由
 * Integer ordertime：联系时间排序条件
 * String contacttime：最新联系时间
 * Integer count：已联系客户数量
 * List（CustomerContacts） contactsItem：联系人列表
 * List（Log） logList：日志列表
 * String sort：排列方式（）
 * String createusersname：创建人姓名
 * */
public class CustomerInfo extends BaseModel {

	private static final long serialVersionUID = 4049379573034165929L;

	@Override
	public String toString() {
		return ReflectionToStringBuilder.toString(this);
	}
	

	private String cname;  //客户名称
	private String qyname;//企业名称
	private String nickname; //备用名
	private String code;   //行业CODE
	private String firm;  //企业商号
	private Integer calling;      //行业类别
	private Integer productcategory; //产品类别    { 网聘  招聘会 猎头 }
	private String mail;  //邮箱
	private String province;  //所在省
	private String city;       //所在城市
	private String address;  //公司地址
	private String url;    //公司网站
	private  Integer source;  //客户来源
	private String sourcetwo;  //客户来源自填
	private String tel;     //联系电话
	private String fax;    //传真
	private Integer state;     //客户状态
	private Integer lxstate;//客户联系状态
	private Integer biztype;//业务状态 
	private Integer level;     //客户级别
	private String summary; //客户简介
	private String coofid;//合作文件id
	private Integer coostate;//合作审核状态
	private Integer type; //客户类型（0用户 1企业）
	private Integer paperspurpose; //证件类型
	private String category;//资质情况（资质类别）
	private Long uid;//拥有人（如果是公共库则是0）
	private String idcard;//身份证号码
	private String endtime;//到期时间
	private String endtimeone;//到期时间
	private String endtimetwo;//到期时间
	private Integer iszj; //是否为中介 0 否 1 是
	private String zzleval;//资质等级
	private Integer isdel;//是否删除 0 未删除  1 已删除
	private String remarkname;//合作申请驳回理由
	private Integer ordertime;//联系时间排序条件
	private List<UserInfo> userlist;//用户列表
	private String contacttime;//最新联系时间
	private Integer  count ; //已联系客户数量
	private Integer dystate;//预约状态  99 未预约  0 已预约  2 已联系
	private  List<CustomerContacts> contactsItem; //联系人
	private List<ContactsDynamicInfo> cDynaicItem;//联系记录列表
	private  List<Log> logList;
	private String sort; //排列方式（）
	private Integer boutique;// 精品资源 0 非精品资源    1 精品资源
	private String  tags; //标签
	private String createusersname;//创建人姓名
	private transient List<CustomerFiles> filesItem; //文件关联表
	private transient List<CustomerCategory> categoryItem; //资质关联表
	private Contract contractItem;//合同表
        private String days;//剩余出证天数
	private Long contractid;//合同ID 
	private List<Contract> contractLise; //合同列表
	
	private List<CustomerQualificationItem>  qitem;//资质跟进记录
	
	private String xzuser;//协作人员
	
	/**
	 * 挂靠人员列表
	 */
	private List<CustomerInfo> gaokaoUser;
	/**
	 * 挂靠企业信息
	 */
	private CustomerInfo gaokaoQY;
	
	/**
	 * 挂靠企业数量
	 */
	private int gaokaoQYSize;
	
	
	private String account;//帐号
	private String password;//密码
	private String accounttwo;//帐号
	private String passwordtwo;//
	private String name;
	
	private String phone;//手机
	private String qq;//qq
	private String webchart;//微信
	private String types;//证书类型（0初始1转注册）
	private String technicalpost;//职称
	
	private Long olduid;//老的uid用于资源转移
	
	private int categorys; //int类型的category
	
	private int advancemoney; //垫款总额
	
	private String remark; //备注接受
	
	private Integer servicesign; //客服联系标识
	
	private Integer contractcount; //未到期合同总数
	
	private String arrivetime; //证到公司页面
	
	private Long quid ;//资质人员表ID
	
	private List<Long> sondpidlist; //子部门id
	
	public Integer getBoutique() {
		return boutique;
	}
	public void setBoutique(Integer boutique) {
		this.boutique = boutique;
	}
	public Integer getIszj() {
		return iszj;
	}
	public void setIszj(Integer iszj) {
		this.iszj = iszj;
	}
	public int getGaokaoQYSize() {
		return gaokaoQYSize;
	}
	public void setGaokaoQYSize(int gaokaoQYSize) {
		this.gaokaoQYSize = gaokaoQYSize;
	}
	public Integer getBiztype() {
		return biztype;
	}
	public void setBiztype(Integer biztype) {
		this.biztype = biztype;
	}
	public String getTags() {
		return tags;
	}
	public void setTags(String tags) {
		this.tags = tags;
	}
	public CustomerInfo getGaokaoQY() {
		return gaokaoQY;
	}
	public void setGaokaoQY(CustomerInfo gaokaoQY) {
		this.gaokaoQY = gaokaoQY;
	}
	public String getEndtimeone() {
		return endtimeone;
	}
	public void setEndtimeone(String endtimeone) {
		this.endtimeone = endtimeone;
	}
	public String getEndtimetwo() {
		return endtimetwo;
	}
	public void setEndtimetwo(String endtimetwo) {
		this.endtimetwo = endtimetwo;
	}
	public String getXzuser() {
		return xzuser;
	}
	public void setXzuser(String xzuser) {
		this.xzuser = xzuser;
	}
	public List<CustomerInfo> getGaokaoUser() {
		return gaokaoUser;
	}
	public void setGaokaoUser(List<CustomerInfo> gaokaoUser) {
		this.gaokaoUser = gaokaoUser;
	}
	public String getAccounttwo() {
		return accounttwo;
	}
	public void setAccounttwo(String accounttwo) {
		this.accounttwo = accounttwo;
	}
	public List<Long> getSondpidlist() {
		return sondpidlist;
	}
	public void setSondpidlist(List<Long> sondpidlist) {
		this.sondpidlist = sondpidlist;
	}
	public String getQyname() {
		return qyname;
	}
	public void setQyname(String qyname) {
		this.qyname = qyname;
	}
	public Long getQuid() {
		return quid;
	}
	public void setQuid(Long quid) {
		this.quid = quid;
	}
	public Integer getLxstate() {
		return lxstate;
	}
	public void setLxstate(Integer lxstate) {
		this.lxstate = lxstate;
	}
	public List<CustomerQualificationItem> getQitem() {
		return qitem;
	}
	public void setQitem(List<CustomerQualificationItem> qitem) {
		this.qitem = qitem;
	}
	public String getPasswordtwo() {
		return passwordtwo;
	}
	public void setPasswordtwo(String passwordtwo) {
		this.passwordtwo = passwordtwo;
	}
	public Long getContractid() {
		return contractid;
	}
	public void setContractid(Long contractid) {
		this.contractid = contractid;
	}
	public String getDays() {
		return days;
	}
	public void setDays(String days) {
		this.days = days;
	}
	public String getArrivetime() {
		return arrivetime;
	}
	public void setArrivetime(String arrivetime) {
		this.arrivetime = arrivetime;
	}
	public Integer getIsdel() {
		return isdel;
	}
	public void setIsdel(Integer isdel) {
		this.isdel = isdel;
	}
	public String getZzleval() {
		return zzleval;
	}
	public void setZzleval(String zzleval) {
		this.zzleval = zzleval;
	}
	public Integer getDystate() {
		return dystate;
	}
	public void setDystate(Integer dystate) {
		this.dystate = dystate;
	}
	public String getCname() {
		return cname;
	}
	public void setCname(String cname) {
		this.cname = cname;
	}
	public String getCode() {
		return code;
	}
	public void setCode(String code) {
		this.code = code;
	}
	public String getFirm() {
		return firm;
	}
	public void setFirm(String firm) {
		this.firm = firm;
	}
	public Integer getCalling() {
		return calling;
	}
	public void setCalling(Integer calling) {
		this.calling = calling;
	}
	public Integer getProductcategory() {
		return productcategory;
	}
	public void setProductcategory(Integer productcategory) {
		this.productcategory = productcategory;
	}
	public String getMail() {
		return mail;
	}
	public void setMail(String mail) {
		this.mail = mail;
	}
	public String getProvince() {
		return province;
	}
	public void setProvince(String province) {
		this.province = province;
	}
	public String getCity() {
		return city;
	}
	public void setCity(String city) {
		this.city = city;
	}
	public String getAddress() {
		return address;
	}
	public void setAddress(String address) {
		this.address = address;
	}
	public String getUrl() {
		return url;
	}
	public void setUrl(String url) {
		this.url = url;
	}
	public Integer getSource() {
		return source;
	}
	public void setSource(Integer source) {
		this.source = source;
	}
	public String getSourcetwo() {
		return sourcetwo;
	}
	public void setSourcetwo(String sourcetwo) {
		this.sourcetwo = sourcetwo;
	}
	public String getTel() {
		return tel;
	}
	public void setTel(String tel) {
		this.tel = tel;
	}
	public String getFax() {
		return fax;
	}
	public void setFax(String fax) {
		this.fax = fax;
	}
	public Integer getState() {
		return state;
	}
	public void setState(Integer state) {
		this.state = state;
	}
	public Integer getLevel() {
		return level;
	}
	public void setLevel(Integer level) {
		this.level = level;
	}
	public String getSummary() {
		return summary;
	}
	public void setSummary(String summary) {
		this.summary = summary;
	}
	public String getCoofid() {
		return coofid;
	}
	public void setCoofid(String coofid) {
		this.coofid = coofid;
	}
	public Integer getCoostate() {
		return coostate;
	}
	public void setCoostate(Integer coostate) {
		this.coostate = coostate;
	}
	public Integer getType() {
		return type;
	}
	public void setType(Integer type) {
		this.type = type;
	}
	public String getRemarkname() {
		return remarkname;
	}
	public void setRemarkname(String remarkname) {
		this.remarkname = remarkname;
	}
	public Integer getOrdertime() {
		return ordertime;
	}
	public void setOrdertime(Integer ordertime) {
		this.ordertime = ordertime;
	}
	public String getContacttime() {
		return contacttime;
	}
	public void setContacttime(String contacttime) {
		this.contacttime = contacttime;
	}
	public Integer getCount() {
		return count;
	}
	public void setCount(Integer count) {
		this.count = count;
	}
	public List<CustomerContacts> getContactsItem() {
		return contactsItem;
	}
	public void setContactsItem(List<CustomerContacts> contactsItem) {
		this.contactsItem = contactsItem;
	}
	public List<Log> getLogList() {
		return logList;
	}
	public void setLogList(List<Log> logList) {
		this.logList = logList;
	}
	public String getSort() {
		return sort;
	}
	public void setSort(String sort) {
		this.sort = sort;
	}
	public Integer getPaperspurpose() {
		return paperspurpose;
	}
	public void setPaperspurpose(Integer paperspurpose) {
		this.paperspurpose = paperspurpose;
	}
	public String getCategory() {
		return category;
	}
	public void setCategory(String category) {
		this.category = category;
	}
	public Long getUid() {
		return uid;
	}
	public void setUid(Long uid) {
		this.uid = uid;
	}
	public List<UserInfo> getUserlist() {
		return userlist;
	}
	public void setUserlist(List<UserInfo> userlist) {
		this.userlist = userlist;
	}
	public String getCreateusersname() {
		return createusersname;
	}
	public void setCreateusersname(String createusersname) {
		this.createusersname = createusersname;
	}
	public List<CustomerFiles> getFilesItem() {
		return filesItem;
	}
	public void setFilesItem(List<CustomerFiles> filesItem) {
		this.filesItem = filesItem;
	}
	public List<CustomerCategory> getCategoryItem() {
		return categoryItem;
	}
	public void setCategoryItem(List<CustomerCategory> categoryItem) {
		this.categoryItem = categoryItem;
	}
	public List<ContactsDynamicInfo> getcDynaicItem() {
		return cDynaicItem;
	}
	public void setcDynaicItem(List<ContactsDynamicInfo> cDynaicItem) {
		this.cDynaicItem = cDynaicItem;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public String getPhone() {
		return phone;
	}
	public void setPhone(String phone) {
		this.phone = phone;
	}
	public String getQq() {
		return qq;
	}
	public void setQq(String qq) {
		this.qq = qq;
	}
	public String getWebchart() {
		return webchart;
	}
	public void setWebchart(String webchart) {
		this.webchart = webchart;
	}
	public String getTypes() {
		return types;
	}
	public void setTypes(String types) {
		this.types = types;
	}
	public String getEndtime() {
		return endtime;
	}
	public void setEndtime(String endtime) {
		this.endtime = endtime;
	}
	public String getTechnicalpost() {
		return technicalpost;
	}
	public void setTechnicalpost(String technicalpost) {
		this.technicalpost = technicalpost;
	}
	public String getIdcard() {
		return idcard;
	}
	public void setIdcard(String idcard) {
		this.idcard = idcard;
	}
	public Long getOlduid() {
		return olduid;
	}
	public void setOlduid(Long olduid) {
		this.olduid = olduid;
	}
	public Contract getContractItem() {
		return contractItem;
	}
	public void setContractItem(Contract contractItem) {
		this.contractItem = contractItem;
	}
	public int getCategorys() {
		return categorys;
	}
	public void setCategorys(int categorys) {
		this.categorys = categorys;
	}
	public String getNickname() {
		return nickname;
	}
	public void setNickname(String nickname) {
		this.nickname = nickname;
	}
	public int getAdvancemoney() {
		return advancemoney;
	}
	public void setAdvancemoney(int advancemoney) {
		this.advancemoney = advancemoney;
	}
	public String getAccount() {
		return account;
	}
	public void setAccount(String account) {
		this.account = account;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getRemark() {
		return remark;
	}
	public void setRemark(String remark) {
		this.remark = remark;
	}
	public List<Contract> getContractLise() {
		return contractLise;
	}
	public void setContractLise(List<Contract> contractLise) {
		this.contractLise = contractLise;
	}
	public Integer getServicesign() {
		return servicesign;
	}
	public void setServicesign(Integer servicesign) {
		this.servicesign = servicesign;
	}
	public Integer getContractcount() {
		return contractcount;
	}
	public void setContractcount(Integer contractcount) {
		this.contractcount = contractcount;
	}
	
}
